package weaver.interfaces.ht.duss.cgsq;

import com.sap.mw.jco.JCO;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import weaver.general.Util;
import weaver.interfaces.jjy.duss.util.SAPConnPool;

import java.util.HashMap;
import java.util.Map;

/**
 * @Title: ecology-9-demo
 * @Company: 泛微软件
 * @author: weaver.Dusongsong
 * @version: 1.0
 * @CreateDate: 2020-06-17
 * @Description: 物料采购记录
 * @ModifyLog:
 **/

public class ZBPM_PRS_HELP_1 {
    public JCO.Table  execute(Map<String, String> map) {
        SAPConnPool SAPConn = new SAPConnPool();
        JCO.Client myConnection = SAPConn.getConnection();
        JCO.Function bapi = SAPConn.excuteBapi("ZBPM_PRS_HELP_1");
        JCO.ParameterList input = bapi.getImportParameterList();//输入参数和结构处理
        JCO.ParameterList inputtable = bapi.getTableParameterList();//输入表的处理
        //输入参数
        input.setValue(map.get("AUFNR"),"AUFNR");
        input.setValue(map.get("GJAHR"),"GJAHR");
        //执行函数
        myConnection.execute(bapi);
        JCO.ParameterList out = bapi.getExportParameterList();//输出参数和结构处理
        JCO.ParameterList Table00 = bapi.getTableParameterList();//输出表的处理

        //返回处理结果以及日志
        JCO.Table tabs = Table00.getTable("IT_FILE");
        System.out.println("SPA_COUNTS:"+tabs.getNumRows());
        //返回处理结果以及日志
        JCO.releaseClient(myConnection);
        return tabs;
    }

    public static void main(String[] args) {
        ZBPM_PRS_HELP_1 zbpmCeBudget = new ZBPM_PRS_HELP_1();
        Map map = new HashMap();
        map.put("AUFNR", "IHAUR2001");
        map.put("GJAHR", "2020");

        JCO.Table tabs = zbpmCeBudget.execute(map);
        JSONArray jsonArray = new JSONArray();
        for (int i = 0; i < tabs.getNumRows(); i++) {
            JSONObject jsonObject = new JSONObject();
            tabs.setRow(i);
            jsonObject.put("TXZ01", Util.null2String(tabs.getValue("TXZ01")));//短文本
            jsonObject.put("EBELN", Util.null2String(tabs.getValue("EBELN")));//采购凭证号
            jsonObject.put("BEDAT", Util.null2String(tabs.getValue("BEDAT")));//订单日期
            jsonObject.put("MENGE", Util.null2String(tabs.getValue("MENGE")));//采购订单数量
            jsonObject.put("MEINS", Util.null2String(tabs.getValue("MEINS")));//采购订单的计量单位
            jsonObject.put("NETPR", Util.null2String(tabs.getValue("NETPR")));//净价
            jsonObject.put("WAERS", Util.null2String(tabs.getValue("WAERS")));//货币码
            jsonArray.add(jsonObject);
        }
        System.out.println(jsonArray.toString());
    }
}
